Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## rdlc.hw
Class ModuleInstance_Standard

    java.lang.Object
      rdlc.naming.Catalog<java.lang.String,V>
          rdlc.naming.HierarchicalCatalog<Field>
              rdlc.rdl.Instance
                  rdlc.hw.ModuleInstance_Standard

All Implemented Interfaces:
  Expression, Field

    public class ModuleInstance_Standard

extends Instance

This is a standard module instance. This class does not represent an instance in the HDL sense, but it is the container for all of the fields of the module.

Version:
  $Revision: 1.18 $
Author:
  Greg Gibeling

Nested Class Summary
`protected static class` | `ModuleInstance_Standard.Message_Fixed` Abstract class which represents a fixed bitwidth message for the purpose of generating packing and unpacking logic.
`protected static class` | `ModuleInstance_Standard.Message_Variable` Abstract class which represents a variable bitwidth message for the purpose of generating packing and unpacking logic.
`protected static class` | `ModuleInstance_Standard.MessageSimple` This class represents a simple fixed width message.
`protected static class` | `ModuleInstance_Standard.MessageStruct_Fixed` This class represents a fixed width structured message.
`protected static class` | `ModuleInstance_Standard.MessageStruct_Variable` This class represents a struct where some of the fields down the line are variable size unions.
`protected static class` | `ModuleInstance_Standard.MessageUnion_Fixed` This class represents a union which has identically sized fields.
`protected static class` | `ModuleInstance_Standard.MessageUnion_Variable` This class represents a variable width union.

Nested classes/interfaces inherited from class rdlc.rdl.Instance
`Instance.Accessor, Instance.Identifier, Instance.LateBindField, Instance.QualifiedIdentifier`

Nested classes/interfaces inherited from class rdlc.naming.HierarchicalCatalog
`HierarchicalCatalog.DefaultAccessor<_V>`

Nested classes/interfaces inherited from interface rdlc.rdl.Expression
`Expression.Phase`

Field Summary

Fields inherited from class rdlc.rdl.Instance
`bound, copied, copySource, dynRoot, lateBindFieldList, namespace, resolved`

Fields inherited from class rdlc.naming.HierarchicalCatalog
`cachedIdentifier, cachedRoot, name, parent`

Fields inherited from class rdlc.naming.Catalog
`entryList, indexTable`

Constructor Summary
`ModuleInstance_Standard(Module _module)` Simple constructor, creates a module instance for the given module.

Method Summary
`Field` | `copy(java.lang.String _name, Instance _instance)` Create a copy of this field in the given instance.
`protected static ModuleInstance_Standard.Message_Fixed` | `createMessageFixed(java.lang.String _name, ModuleInstance_Standard _instance, Message message)` Create an object which represents a fixed bitwidth message.
`protected static ModuleInstance_Standard.Message_Variable` | `createMessageVariable(java.lang.String _name, ModuleInstance_Standard _instance, Message message)` Create an object which represents a variable bitwidth message.
`void` | `generatePack(UnitPort unitPort, ModuleParameterGroup paramGroup, int extraWidth, Library library)` Generate the message packing buffer and logic.
`protected void` | `generatePackBufferState(UnitPort unitPort, int extraWidth, Namespace RAMPNamespace)` Generate a message buffer for an outgoing message.
`void` | `generateUnpack(UnitPort unitPort, Library library)` Generate the message unpacking buffer and logic.
`protected void` | `generateUnpackBufferState(UnitPort unitPort, Namespace RAMPNamespace)` Generate a message buffer for an incoming message.
`ModuleParameter` | `getParameter(java.lang.String paramName)` Simple accessor.
`ModuleWire` | `getWire(java.lang.String wireName)` Simple accessor.
`java.lang.String` | `toString()` Simple accessor.

Methods inherited from class rdlc.rdl.Instance
`add, add, bindFields, copySubInstance, createIdentifier, getDynRoot, getRequirements, resolve, setInstance, setNamespace, setRawDynamicID, typeMatch`

Methods inherited from class rdlc.naming.HierarchicalCatalog
`connectParent, getIdentifier, getName, getParent, getRoot, hashCode`

Methods inherited from class rdlc.naming.Catalog
`clear, containsKey, entryList, get, get, getKey, isEmpty, keySet, put, put, putAll, remove, size`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface rdlc.rdl.Field
`getIdentifier`

Constructor Detail

### ModuleInstance_Standard

    public ModuleInstance_Standard(Module _module)

  Simple constructor, creates a module instance for the given module.

  Parameters:
    `_module` - The module to which this instance corresponds.

Method Detail

### copy

    public Field copy(java.lang.String _name,
                      Instance _instance)

  Description copied from interface: `Field`
  Create a copy of this field in the given instance. This is highly useful during dynamic hierarchy copying and during back end generation.

  Parameters:
    `_name` - The new name to use.
    `_instance` - The instance the copy should be a member of.
  See Also:
    `Field.copy(String, Instance)`

### toString

    public java.lang.String toString()

  Simple accessor.

  Overrides:
    `toString` in class `Instance`
  Returns:
    A human readable representation of this expression for debugging.

### getWire

    public ModuleWire getWire(java.lang.String wireName)

  Simple accessor. Allows wires in a module to be accessed without regard to groupings.

  Parameters:
    `wireName` - The wire to lookup.
  Returns:
    The wire in this module with the given name.

### getParameter

    public ModuleParameter getParameter(java.lang.String paramName)

  Simple accessor. Allows parameters in a module to be accessed without regard to groupings.

  Parameters:
    `paramName` - The parameter to lookup.
  Returns:
    The parameter in this module with the given name.

### generatePack

    public void generatePack(UnitPort unitPort,
                             ModuleParameterGroup paramGroup,
                             int extraWidth,
                             Library library)

  Generate the message packing buffer and logic. This method encapsulates all of the complicated marshalling logic.

  Parameters:
    `unitPort` - The unit port for which the logic is being generated.
    `paramGroup` - The parameter group to use.
    `extraWidth` - The extra width to add into the calculated, bitwidths.
    `library` - The library from which to draw components.

### generateUnpack

    public void generateUnpack(UnitPort unitPort,
                               Library library)

  Generate the message unpacking buffer and logic. This method encapsulates all of the complicated unmarshalling logic.

  Parameters:
    `unitPort` - The unit port for which the logic is being generated.
    `library` - The library from which to draw components.

### generatePackBufferState

    protected void generatePackBufferState(UnitPort unitPort,
                                           int extraWidth,
                                           Namespace RAMPNamespace)

  Generate a message buffer for an outgoing message.

  Parameters:
    `unitPort` - The port for which the logic is being generated.
    `extraWidth` - The extra width to add into the calculated, bitwidths.
    `RAMPNamespace` - The RAMP namespace, used for finding library components.

### generateUnpackBufferState

    protected void generateUnpackBufferState(UnitPort unitPort,
                                             Namespace RAMPNamespace)

  Generate a message buffer for an incoming message.

  Parameters:
    `unitPort` - The port for which the logic is being generated.
    `RAMPNamespace` - The RAMP namespace, used for finding library components.

### createMessageFixed

    protected static ModuleInstance_Standard.Message_Fixed createMessageFixed(java.lang.String _name,
                                                                              ModuleInstance_Standard _instance,
                                                                              Message message)

  Create an object which represents a fixed bitwidth message. These objects are used to generate packing and unpacking logic.

  Parameters:
    `_name` - The name to give this object.
    `_instance` - The module instance to which this object will belong.
    `message` - The message it will represent.
  Returns:
    A fixed bitwidth message object.

### createMessageVariable

    protected static ModuleInstance_Standard.Message_Variable createMessageVariable(java.lang.String _name,
                                                                                    ModuleInstance_Standard _instance,
                                                                                    Message message)

  Create an object which represents a variable bitwidth message. These objects are used to generate packing and unpacking logic.

  Parameters:
    `_name` - The name to give this object.
    `_instance` - The module instance to which this object will belong.
    `message` - The message it will represent.
  Returns:
    A variable bitwidth message object.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD